#include<stdio.h>
#include<unistd.h>
#include<pthread.h>

void * func(void * arg){
	printf("This is child thread\n");
	while(1){
		//sleep函数是一个取消点
		sleep(5);
	}
	pthread_exit("thread return");
}

int main(){
	pthread_t tid;
	void *retv;

	pthread_create(&tid, NULL, func, NULL);
	sleep(5);
	//这个函数没有阻塞效果，有sleep才可以取消
	pthread_cancel(tid);
	//只有join才有阻塞效果
	pthread_join(tid, &retv);
	while(1){
		sleep(1);
	}
}
